#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
#include<math.h>

//int main()
//{
//	int x = -1;
//	unsigned int y = 2;
//	if (x > y)
//	{
//		printf("x is greater");
//	}
//	else
//	{
//	printf("y is greater");
//	} 
//	return 0;
//}

//int main()
//{
//	int k, a, b;
//	unsigned int w = 5;
//	double x = 1.42;
//	x = x % 3;
//	return 0;
//}

//int main()
//{
//	int i = 1;
//	sizeof(i++);
//	printf("%d\n", i);
//	return 0;
//}

//int main()
//{
//	int arr[] = { 1,1,0,1,1,1 };
//	int count = 0;
//	int maxcount = 0;
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		if (arr[i] == 1)
//		{
//			count++;
//		}
//		else
//		{
//			maxcount = count;
//			count = 0;
//		}
//		if (maxcount < count)
//		{
//			maxcount = count;
//		}
//	}
//	printf("%d ", maxcount);
//	return 0;
//}

int main()
{
	int n = 0;
	scanf("%d", &n);
	int i = 0;
	int j = 0;
	int sum = 0;
	int z = 0;
	for (i = 0; i < n; i++)
	{
		sum = 0;
		for (j = 1; j <= sqrt(i); j++)
		{
			if (i % j == 0)
			{
				z = 0;
				z = i / j;
				if (j == i )
				{
					sum = sum + z;
				}
				else if (z == i)
				{
					sum += j;
				}
				else
				{
					sum = sum + j + z;
				}
			}
		}
		if (sum == i&&sum!=0&&sum!=1)
		{
			printf("%d ", i);
		}
	}
	return 0;
}